/*
 *                        .::::.
 *                      .::::::::.
 *                     :::::::::::
 *                  ..:::::::::::'
 *               '::::::::::::'
 *                 .::::::::::
 *            '::::::::::::::..
 *                 ..::::::::::::.
 *               ``::::::::::::::::
 *                ::::``:::::::::'        .:::.
 *               ::::'   ':::::'       .::::::::.
 *             .::::'      ::::     .:::::::'::::.
 *            .:::'       :::::  .:::::::::' ':::::.
 *           .::'        :::::.:::::::::'      ':::::.
 *          .::'         ::::::::::::::'         ``::::.
 *      ...:::           ::::::::::::'              ``::.
 *     ````':.          ':::::::::'                  ::::..
 *                        '.:::::'                    ':'````..
 *
 * @Author: ls
 * @Date: 2020-12-18 09:25:50
 * @LastEditTime: 2020-12-18 10:43:35
 * @LastEditors: Please set LastEditors
 * @Description: player
 * @FilePath: \circularMotion\assets\Script\player.js
 */

cc.Class({
    extends: cc.Component,

    properties: {},

    onLoad: function () {
        // 圆周运动继承于cc.ActionInterval,属于时间间隔动作;
        // 圆周运动是根据持续时间、圆心位置、半径、初始角度以及旋转角度五种属性来实现;
        // 当前坐标公式:
        // let x = radius * Math.sin((angle / 180) * Math.PI);
        // let y = radius * Math.cos((angle / 180) * Math.PI);
        // 设计传入参数 为 duration(时间), deltaAngle(旋转角度或旋转到角度), deltaPos(圆心位置或圆心位置x坐标), deltaY(圆心位置y坐标)
        // 设计中未加入初始角度(原因1:减少传入值,方便使用;2:一般来说圆周运动开始前都会设置好节点的开始位置和开始角度,没必要在做处理;)
        // 如果以上不能满足需求,也可增加初始角度(具体实现可查看moveCircle.js,对this._startAngle重新赋值)
        // 需要注意的是: 设计中未加入初始角度,在开始执行动作时,会根据当前节点角度,改变节点位置.如果要实现动作与实际不符,可关注此条!!!
        // 设计参考 官方 cc.rotateTo、cc.rotateBy;
        // 参考地址 https://github.com/cocos-creator/engine/blob/26031bddd1aecdbf9bbdebe19ecaa672b1c35061/cocos2d/actions/CCActionInterval.js#L1144

        let moveCircleBy = cc.moveCircleBy(10, 360, 0, 0);
        // let moveCircleTo = cc.moveCircleBy(10, 360, 0, 0);
        this.node.runAction(moveCircleBy);
    },

    update: function (dt) {},
});
